package saei.persistencia.DAO;

import java.util.List;

import org.hibernate.Query;

import saei.bean.SolicitudCompra;

@SuppressWarnings("unchecked")
public class SolicitudCompraDAO extends EntidadPersistenteDAO {

	public static SolicitudCompra buscar(int numeroSolicitud) {
		List<SolicitudCompra> lista = null;
		
		String fromQuery = "from SolicitudCompra where numeroSolicitud = :numeroSolicitud";
		Query query = getSession().createQuery(fromQuery);
		query.setInteger("numeroSolicitud", numeroSolicitud);
		lista = query.list();
		
		return (SolicitudCompra) (lista != null && lista.size() > 0 ? lista.get(0) : null);	
	}
	
	public static SolicitudCompra buscarPorOdenDeCompra(int numeroOrdenCompra) {
		List<SolicitudCompra> lista = null;
		
		String fromQuery = "from SolicitudCompra where numeroOrdenCompra = :numeroOrdenCompra";
		Query query = getSession().createQuery(fromQuery);
		query.setInteger("numeroOrdenCompra", numeroOrdenCompra);
		lista = query.list();
		
		return (SolicitudCompra) (lista != null && lista.size() > 0 ? lista.get(0) : null);	
	}
	
	public static Integer obtenerMayorNumero()
	{
		Query query = getSession().createQuery(" select max(numeroSolicitud) from SolicitudCompra ");
		Integer mayorNumero = (Integer) query.setFirstResult(0).setMaxResults(1).uniqueResult();

		return (mayorNumero == null? 0: mayorNumero);
	}
}
